
/*******************************************************************************
 * 初始化多图片上传和左右切换展示的的控件
 ******************************************************************************/
function initMulFunc(dateRow,dsId,prefix,keyValues,sflag) {   //详情页面的回调函数会调用该方法	
	if($("#datalist_m td[field=BANK_NO]").length>0){
		$("#datalist_m td[field=BANK_NO]").next.bind("keyup",function(e){
			clearNotFJMT(e,this);
		});
	}
	var initDiv="";
	// 左右切换的图片少于5个的时候左右切换的图标隐藏
	var prolists=$("input[eletype=mulimage][hd!=T]").parent().find("div[id=prolists]");
	$(prolists).map(function(){
		if ($(this).find("img").length <= 5) {
			$(this).parents("#mul_imgs").find("#left").hide();
			$(this).parents("#mul_imgs").find("#right").hide();
		}
		if ($(this).find("img").length > 5) {
			$(this).parents("#mul_imgs").find("#left").show();
			$(this).parents("#mul_imgs").find("#right").show();
			//实现左右切换
			var prolistsObj=$(this).parents("#mul_imgs").find("#prolists");
			leftRightChange($(this).parents("#mul_imgs").find("#left"),$(this).parents("#mul_imgs").find("#right"),prolistsObj);
		}
	});
	// 初始化dropzone空间
	var isInit=$("#myDropzone").attr("isInit");
	if(isInit!="true"){
		var myDrops=$("input[eletype=mulimage][hd!=T]").parent().find("div[id=myDropzone]");
		$(myDrops).map(function(){
			initDropzone(dsId,this);     //当一个业务单中出现多张图片上传空间的时候，传递的参数  “myDropzone” 会出问题，需要修改
		});
	}
};


/***
 * 初始化多图片上传和点击展示链接之后才展示的的控件
 * @param dateRow
 * @param dsId
 * @param prefix
 * @param keyValues
 * @param sflag
 */
function initShowMsgFunc(dateRow,dsId,prefix,keyValues,sflag) {   //详情页面的回调函数会调用该方法	
	// 左右切换的图片少于5个的时候左右切换的图标隐藏var initDiv="";
	// 初始化dropzone空间
	var isInit=$("#myDropzone").attr("isInit");
	if(isInit!="true"){
		var myDrops=$("input[eletype=showimage][hd!=T]").parent().find("div[id=myDropzone]");
		$(myDrops).map(function(){
			initDropzone(dsId,this);     //当一个业务单中出现多张图片上传空间的时候，传递的参数  “myDropzone” 会出问题，需要修改
		});
	}
};



/*******************************************************************************
 * 初始化dropzone控件
 ******************************************************************************/
//var fileName_fixx = ""; 
function initDropzone(dsId,obj) {
//	fileName_fixx = Math.uuid(); 
	$(obj).attr("isInit","true");
	var colnName=$(obj).attr("colnName");
	// Dropzone的初始化 上传控件
	$(obj).dropzone({
		url : _m_url+"upload/uploadPicture?dsId="+dsId+"&colnName="+colnName,  //+"&uuid="+fileName_fixx,
		method : "post",
		// 指定上传图片的路径
		// 添加上传取消和删除预览图片的链接，默认不添加
		addRemoveLinks : false,
		// 指定类型
		acceptedFiles : "image/*",
		// 关闭自动上传功能，默认会true会自动上传
		// 也就是添加一张图片向服务器发送一次请求
		autoProcessQueue : true,
		// 允许上传多个照片
		uploadMultiple : false,
		// 每次上传的最多文件数，经测试默认为2，坑啊
		// 记得修改web.config 限制上传文件大小的节
		parallelUploads : 100,
		dictDefaultMessage : "把文件拖到此处上传",
		dictFallbackMessage : "您的浏览器不支持拖拽文件上传。",
		dictFallbackText : "Please use the fallback form below to upload your files like in the olden days.",
		dictFileTooBig : "文件太大({{filesize}}MiB). 最大文件大小: {{maxFilesize}}MiB。",
		dictInvalidFileType : "你不能上传这个文件类型！",
		dictResponseError : "服务器了{{statusCode}} 代码。",
		dictCancelUpload : "取消上传",
		dictCancelUploadConfirmation : "你确定你要取消这上传吗?",
		dictRemoveFile : "删除文件",
		dictRemoveFileConfirmation : null,
		dictMaxFilesExceeded : "你不能上传任何文件。",
		init : function() {
			this.on("success", function(file) {
				if(file.xhr.responseText == "success"){   
					//当上传成功的时候把图片上传字段的chan 设置成chan='T'
					var colnName=$(obj).attr("colnName");
					//获取上传成功的图片，如果个数大于1 那么chan=T
					$("input[qucln="+colnName+"]").attr("chan","T");
				} 
				$("#myDropzone>div :gt(0)").each(function(i, n) {	
					 var pattern = /^[^`~!！@ #$%^&*()_+<>?:"{},\/;'[\]]+$/; 
					 var nameStr = $(n).find("div").find("div").get(1).innerHTML;
				     var b = pattern.test(nameStr);
				 		    if(file.xhr.responseText == "NamingError" && !b){
							var div = $(n).find("div").get(4);
							$(div).css("background-position", "-268px -123px");
							
							var div_msg = $(n).find("div").get(1);
							$(div_msg).children("span").html("图片命名有误"); 
							
						  }	
							if (file.xhr.responseText != "success" && file.xhr.responseText == nameStr) {
								//判断上传的时候图片名称是否重复，如果重复 那么给出错误的提示	
							var div = $(n).find("div").get(4);
							$(div).css("background-position", "-268px -123px");
							var div_msg = $(n).find("div").get(1);
							$(div_msg).children("span").html("图片名称重复");  
							console.log($(div_msg));
						 } 
				})
			 
			});
			// 删除图片的事件
			this.on("removedfile", function(file) {
			console.log(file);
						$.ajax({
									type : 'post',
									url : _m_url+'upload/temporaryUploadPicture',
									data : {
										'name' : fileName_fixx+"-"+file.name
									},
									async : false,
									success : function(data) {
									}
								});
					});
		}
	});
}

/*******************************************
 * 图片的左右切换
 *******************************************/
function leftRightChange(leftObj,rightObj,prolistsObj) {
	$(prolistsObj).find("img").css("opacity", "1");
	$(prolistsObj).find("img").hover(function() {
				$(this).css("opacity", "0.5");
			}, function() {
				$(this).css("opacity", "1");
			});
	// 实现左右切换
	var page = 1; // 当前页
	var num = 5; // 每次翻页5张
	var imgNum = $(prolistsObj).find("img").length; // 获取图片总数
	var pageMax = Math.ceil(imgNum / num); // 获取图片列表页数
	console.log(imgNum);
	// 实现左右切换
	$(rightObj).click(function() {
				if (page == pageMax) {
					$(prolistsObj).stop().animate({
								left : "0"
							}, 530);
					page = 1;
				} else {
					$(prolistsObj).stop().animate({
								left : "-=530px"
							}, 530);
					page++;
				}
			});
	$(leftObj).click(function() {
				if (page == 1) {
					$(prolistsObj).stop().animate({
								left : "-" + (pageMax - 1) * 530 + "px"
							}, 530);
					page = pageMax;
				} else {
					$(prolistsObj).stop().animate({
								left : "+=530px"
							}, 530);
					page--;
				}
			});
}


//显示上传图片弹框
function showMyDropzone(dsId,colnName,obj) {
	$(obj).parent().find("div[id=imgDropzone]").show();
	$(obj).parent().find("div[id=imgDropzone]").attr("colnName",colnName);
	$(obj).parent().find("div[id=myDropzone]").removeClass("dz-started");
	$(obj).parent().find("div[id=fade]").css('display','block'); // 把这个单据遮住
}


//展示图片框
function showImgs(dsId,colnName,obj) {
	var newObj=$(obj).parents("div[id=mul_imgs]").prev();
	
	var dsId=$(newObj).attr("dsId");
	var clnName=$(newObj).attr("qucln");
	var pkValue=$(newObj).val();
	$(obj).parent().find("div[id=showImgDropzone]").show();
	$(obj).parent().find("div[id=showImgDropzone]").attr("colnName",clnName);
	$(obj).parent().find("div[id=fade]").css('display','block'); // 把这个单据遮住
	$.ajax({
		url:_a_url+'upload/getFiles?fileId=&dsId='+dsId+'&clnName='+clnName+'&keyValue='+pkValue,
		type:'post',
		async:false,
		success:function(data){
			var callHTML = "";
			for(var i = 0; i < data.fileList.length; i++){
				var path=_m_url+data.fileList[i].PATH;
				var Id=data.fileList[i].ID;
				var p=ReplaceAll(path,' ','%20');     //空格转义
				console.log("===================");
				console.log(p);
				var commonsCnt = data.fileList[i].commentsCnt;
				callHTML+="<img class=\"item\" style=\"width: 363px;height: 370px;box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.16);margin:2px;\"  pkId='"+Id+"' dsId='"+dsId+"' colnName='"+clnName+"' pkValue='"+pkValue+"' src="+p+" onerror='nofind(this)'/>";
			}																						
			var imgobjs=$(callHTML);
			var src =  $(callHTML).attr("src");
			$(obj).parent().find("div[id=showAllImgs]").append(imgobjs);
			
//			$('img').error(function(){
//			    $(this).attr('src',"/publishUI/UploadFiles//default.png");
//			})
			
			//图片右键功能
			Right_key_menu("2");
		}
	});
}

function nofind(obj){
	obj.src="/publishUI/UploadFiles/default.png";
	obj.onerror=null;

	} 

// 上传图片弹框的关闭事件
function closeImgDiv(obj) {
	// 再次弹框的时候清除弹框空间里面的缓存的图片
	$($(obj).parents("#imgDropzone")[0]).find("#myDropzone").find("*").remove();
	var imgUp=$("<div  class=\"dz-default dz-message\"><span>把文件拖到此处上传</span></div>")
	$($(obj).parents("#imgDropzone")[0]).find("#myDropzone").append(imgUp);
	$($(obj).parents("#imgDropzone")[0]).css('display', 'none'); // 把弹框隐藏
	$($(obj).parents("#mul_imgs")[0]).find('#fade').css('display', 'none'); // 把遮罩隐藏
}

function closeSImgDiv(obj){
	// 再次弹框的时候清除弹框空间里面的缓存的图片
	$($(obj).parents("#showImgDropzone")[0]).find("#showAllImgs").find("*").remove();
	$($(obj).parents("#showImgDropzone")[0]).css('display', 'none'); // 把弹框隐藏
	$($(obj).parents("#mul_imgs")[0]).find('#fade').css('display', 'none'); // 把遮罩隐藏
}